package mastercard.assets.jpa;

import java.io.Serializable;
import javax.persistence.*;
import java.sql.Timestamp;
import java.util.List;


/**
 * The persistent class for the tbl_campania database table.
 * 
 */
@Entity
@Table(name="tbl_campania")
public class TblCampania implements Serializable {
	private static final long serialVersionUID = 1L;
	private int cveCampania;
	private byte bandera;
	private String bc;
	private Timestamp fechaAlta;
	private Timestamp fechaFin;
	private Timestamp fechaIni;
	private java.math.BigDecimal gdvTotal;
	private int meses;
	private byte multiplePartner;
        private byte autorizaCountryM;
	private String nombre;
	private byte status;
	private String texto;
	private TblUsuario tblUsuario1;
	private TblUsuario tblUsuario2;
	private TblTipoCampania tblTipoCampania;
	private TblProducto tblProducto;
	private List<TblPaquete> tblPaquetes;
	private TblCuenta tblCuenta;
	private List<TblProducto> tblProductos;
	private List<TblTipoProducto> tblTipoProductos;
	private List<TblPreimplementacion> tblPreimplementacions;
	private List<TblCampaniaProductoUsuario> tblCampaniaProductoUsuarios;
	private List<TblCampaniaProductoAdq> tblCampaniaProductoAdqs;
        private int estrategica ;
        private java.math.BigDecimal roi ;
        private String comentarios ;
        private java.math.BigDecimal revenue ;
        private String contrato ;
        private String inversion ;
        private String proposito ;
        private java.math.BigDecimal resultado ;

    public TblCampania() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="cve_campania", unique=true, nullable=false)
	public int getCveCampania() {
		return this.cveCampania;
	}

	public void setCveCampania(int cveCampania) {
		this.cveCampania = cveCampania;
	}
        
        @Column(nullable=false)
        public String getComentarios() {
		return this.comentarios;
	}

	public void setComentarios(String comentarios) {
		this.comentarios = comentarios;
	}
        
        @Column(nullable=false)
        public int getEstrategica() {
		return this.estrategica;
	}

	public void setEstrategica(int estrategica) {
		this.estrategica = estrategica;
	}
        
        @Column(nullable=false)
        public java.math.BigDecimal getRoi() {
		return this.roi;
	}

	public void setRoi(java.math.BigDecimal roi) {
		this.roi = roi;
	}
        
        @Column(nullable=false)
        public java.math.BigDecimal getRevenue() {
		return this.revenue;
	}

	public void setRevenue(java.math.BigDecimal revenue) {
		this.revenue = revenue;
	}


	@Column(nullable=false)
	public byte getBandera() {
		return this.bandera;
	}

	public void setBandera(byte bandera) {
		this.bandera = bandera;
	}


	@Column(length=100)
	public String getBc() {
		return this.bc;
	}

	public void setBc(String bc) {
		this.bc = bc;
	}
        
        @Column(length=100)
	public String getContrato() {
		return this.contrato;
	}

	public void setContrato(String contrato) {
		this.bc = contrato;
	}


	@Column(name="fecha_alta", nullable=false)
	public Timestamp getFechaAlta() {
		return this.fechaAlta;
	}

	public void setFechaAlta(Timestamp fechaAlta) {
		this.fechaAlta = fechaAlta;
	}


	@Column(name="fecha_fin")
	public Timestamp getFechaFin() {
		return this.fechaFin;
	}

	public void setFechaFin(Timestamp fechaFin) {
		this.fechaFin = fechaFin;
	}


	@Column(name="fecha_ini")
	public Timestamp getFechaIni() {
		return this.fechaIni;
	}

	public void setFechaIni(Timestamp fechaIni) {
		this.fechaIni = fechaIni;
	}


	@Column(nullable=false)
	public java.math.BigDecimal getGdvTotal() {
		return this.gdvTotal;
	}

	public void setGdvTotal(java.math.BigDecimal gdvTotal) {
		this.gdvTotal = gdvTotal;
	}


	@Column(nullable=false)
	public int getMeses() {
		return this.meses;
	}

	public void setMeses(int meses) {
		this.meses = meses;
	}


	@Column(name="multiple_partner", nullable=false)
	public byte getMultiplePartner() {
		return this.multiplePartner;
	}

	public void setMultiplePartner(byte multiplePartner) {
		this.multiplePartner = multiplePartner;
	}
        
        @Column(name="autorizaCountryM", nullable=false)
	public byte getAutorizaCountryM() {
		return this.autorizaCountryM;
	}

	public void setAutorizaCountryM(byte autorizaCountryM) {
		this.autorizaCountryM = autorizaCountryM;
	}

	@Column(nullable=false, length=255)
	public String getNombre() {
		return this.nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
        
        @Column(nullable=false, length=255)
	public String getInversion() {
		return this.inversion;
	}

	public void setInversion(String inversion) {
		this.inversion = inversion;
	}
        
        @Column(nullable=false, length=255)
	public String getProposito() {
		return this.proposito;
	}

	public void setProposito(String proposito) {
		this.proposito = proposito;
	}
        
        @Column(nullable=false)
        public java.math.BigDecimal getResultado() {
		return this.resultado;
	}

	public void setResultado(java.math.BigDecimal resultado) {
		this.resultado = resultado;
	}

	@Column(nullable=false)
	public byte getStatus() {
		return this.status;
	}

	public void setStatus(byte status) {
		this.status = status;
	}


	@Column(nullable=false, length=1024)
	public String getTexto() {
		return this.texto;
	}

	public void setTexto(String texto) {
		this.texto = texto;
	}


	//bi-directional many-to-one association to TblUsuario
    @ManyToOne
	@JoinColumn(name="cve_usuario")
	public TblUsuario getTblUsuario1() {
		return this.tblUsuario1;
	}

	public void setTblUsuario1(TblUsuario tblUsuario1) {
		this.tblUsuario1 = tblUsuario1;
	}
	

	//bi-directional many-to-one association to TblUsuario
    @ManyToOne
	@JoinColumn(name="cve_usuario_resp")
	public TblUsuario getTblUsuario2() {
		return this.tblUsuario2;
	}

	public void setTblUsuario2(TblUsuario tblUsuario2) {
		this.tblUsuario2 = tblUsuario2;
	}
	

	//bi-directional many-to-one association to TblTipoCampania
    @ManyToOne
	@JoinColumn(name="cve_tipo_campania", nullable=false)
	public TblTipoCampania getTblTipoCampania() {
		return this.tblTipoCampania;
	}

	public void setTblTipoCampania(TblTipoCampania tblTipoCampania) {
		this.tblTipoCampania = tblTipoCampania;
	}
	

	//bi-directional many-to-one association to TblProducto
    @ManyToOne
	@JoinColumn(name="cve_producto")
	public TblProducto getTblProducto() {
		return this.tblProducto;
	}

	public void setTblProducto(TblProducto tblProducto) {
		this.tblProducto = tblProducto;
	}
	

	//bi-directional many-to-many association to TblPaquete
	@ManyToMany(mappedBy="tblCampanias")
	public List<TblPaquete> getTblPaquetes() {
		return this.tblPaquetes;
	}

	public void setTblPaquetes(List<TblPaquete> tblPaquetes) {
		this.tblPaquetes = tblPaquetes;
	}
	

	//bi-directional many-to-one association to TblCuenta
    @ManyToOne
	@JoinColumn(name="cve_cuenta", nullable=false)
	public TblCuenta getTblCuenta() {
		return this.tblCuenta;
	}

	public void setTblCuenta(TblCuenta tblCuenta) {
		this.tblCuenta = tblCuenta;
	}
	

	//bi-directional many-to-many association to TblProducto
	@ManyToMany(mappedBy="tblCampanias2")
	public List<TblProducto> getTblProductos() {
		return this.tblProductos;
	}

	public void setTblProductos(List<TblProducto> tblProductos) {
		this.tblProductos = tblProductos;
	}
	

	//bi-directional many-to-many association to TblTipoProducto
	@ManyToMany(mappedBy="tblCampanias")
	public List<TblTipoProducto> getTblTipoProductos() {
		return this.tblTipoProductos;
	}

	public void setTblTipoProductos(List<TblTipoProducto> tblTipoProductos) {
		this.tblTipoProductos = tblTipoProductos;
	}
	

	//bi-directional many-to-one association to TblPreimplementacion
	@OneToMany(mappedBy="tblCampania")
	public List<TblPreimplementacion> getTblPreimplementacions() {
		return this.tblPreimplementacions;
	}

	public void setTblPreimplementacions(List<TblPreimplementacion> tblPreimplementacions) {
		this.tblPreimplementacions = tblPreimplementacions;
	}
	

	//bi-directional many-to-one association to TblCampaniaProductoUsuario
	@OneToMany(mappedBy="tblCampania")
	public List<TblCampaniaProductoUsuario> getTblCampaniaProductoUsuarios() {
		return this.tblCampaniaProductoUsuarios;
	}

	public void setTblCampaniaProductoUsuarios(List<TblCampaniaProductoUsuario> tblCampaniaProductoUsuarios) {
		this.tblCampaniaProductoUsuarios = tblCampaniaProductoUsuarios;
	}
	

	//bi-directional many-to-one association to TblCampaniaProductoAdq
	@OneToMany(mappedBy="tblCampania")
	public List<TblCampaniaProductoAdq> getTblCampaniaProductoAdqs() {
		return this.tblCampaniaProductoAdqs;
	}

	public void setTblCampaniaProductoAdqs(List<TblCampaniaProductoAdq> tblCampaniaProductoAdqs) {
		this.tblCampaniaProductoAdqs = tblCampaniaProductoAdqs;
	}
	
}